package com.hythzx.ddns.service;

import java.util.Optional;

import com.hythzx.ddns.service.dto.emums.IpType;

/**
 * 获取本季公网IP接口
 * @author zhaoyuan
 */
public interface IpService {

	/**
	 * 获取本机的公网IP
	 * @return 公网IP地址
	 */
	Optional<String> getPublicIp();

	/**
	 * 获取本机的IPv6地址
	 * @return
	 */
	Optional<String> getPublicIpV6();

	/**
	 * 获取指定类型的IP地址
	 * @param ipType
	 * @return
	 */
	Optional<String> getPublicIp(IpType ipType);

	/**
	 * 获取指定的IP地址
	 * @param type 解析类型，A：IP v4， AAAA： IP v6
	 * @return
	 */
	Optional<String> getPublicIp(String type);
}
